package com.yazi.mxz.behavior.service;

import com.myframework.smhj.hibernate.Searching;
import com.myframework.smhj.hibernate.Page;
import com.yazi.mxz.behavior.entity.beans.StoreGoods;

public interface StoreGoodsService {
	
	/**
	 * 根据ID获取店铺商品信息
	 * @param storeGoodsId
	 * @return
	 */
	StoreGoods oneById(long storeGoodsId);
	
	/**
	 * 根据商品字段等值条件查询商品
	 * @param sg
	 * @param si
	 * @return
	 */
	Page<StoreGoods> list(StoreGoods sg, Searching si);
	
	/**
	 * 根据商品字段等值条件查询商品数量
	 * @param sg
	 * @param searchWord
	 * @return
	 */
	int count(StoreGoods sg, String searchWord);
	
	/**
	 * 获取同订单的其它在售商品<br>
	 * @param storeGoodsId 商品ID
	 * @param si
	 * @return
	 */
	Page<StoreGoods> listFromSameOrder(long storeGoodsId, Searching si);
	
	/**
	 * 查询库存大于0的店铺商品
	 * @param sg
	 * @param si
	 * @return
	 */
	Page<StoreGoods> listInStock(StoreGoods sg, Searching si);
	
	/**
	 * 查询更新时间大于指定时间的店铺商品
	 * @param updateTime
	 * @param si
	 * @return
	 */
	Page<StoreGoods> listByGtUpdateTime(long updateTime, Searching si);

}
